#ifndef __DATA__
#define __DATA__

#include "IObject.h"

class CData: public virtual IData, public virtual IProductInstance
{
INIT_CLASS_PRODUCT(CData)
public:
    const bool Init(const void * pvdPara, char * pszMsgTxt, int iMsgTxtSize);
    const bool TOP_FLAG();
    void SetTopFlag(const bool bTopFlag);
    const char * AsString(void * ptrPara = nullptr);
	const char * AsString(const char * pszName, char ** pszBuf, unsigned long &ulLen);
    const bool Parse(const char * pszData, int iLne = 0);
    long long SOURCE_PROCESS_ID();
    void SetSourceProcessID(long long llProID);
    long long DESTINATION_PROCESS_ID();
    void SetDestinationProcessID(long long llProID);
    const char * MSG_FLG();
    void SetMsgFlg(const char * pszMsgFlg);
	const int GetQueueKey();
	const void SetQueueKey(const int iQueueKey);
	const int DataSize();
private:
    bool m_bTopFlg;
    string m_strDataBuf, m_strMsgFlg;
	char * m_pszDataBuf;
    long long m_llSouProId, m_llDesProId;
	int m_iQueueKey, m_iLen;
};



#endif//__DATA__